package cn.iocoder.yudao.module.vote.controller.admin.voteuserresult.vo;

import com.alibaba.fastjson.JSONObject;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import java.util.ArrayList;
import java.util.List;

@ApiModel("管理后台 - 投票结果创建 Request VO")
@Data
@ToString(callSuper = true)
public class VoteOnlineUpdateReqVO {


    /**
     * 状态列表
     */
    @Valid
    @NotNull(message = "投票类型不能为空")
    private List<VoteStatus> voteStatusList;
    /**
     * 投票id
     */
//    @NotNull(message = "投票id不能为空")
    private Integer voteId;
    /**
     * ip地址
     */
    private String ip;

    /**
     * 投票名称
     */
    private String voteName;

    /**
     * 投票类型
     */
    private Integer voteType;
    /**
     * 投票人员类型：1、党政主要领导 2、其他领导 3、课题组成员 4、课题组组长
     */
    private Integer votePersonType;

    /**
     * 投票模式 :1 投票，2打分
     */
    private Integer voteMode;

    /**
     * 租户id
     */
    private Integer tenantId;


    private String data;

    @Data
    public static class VoteStatus{
        /**
         *
         */
        @NotNull(message = "主键不能为空")
        @ApiModelProperty(value = "主键")
        private Integer id;

        /**
         * 用户唯一标识
         */
        private String userNo;
//        /**
//         * 投票状态
//         */
//        @NotNull(message = "投票状态不能为空")
//        @ApiModelProperty(value = "投票状态：1同意，2拒绝，3弃权")
//        private Integer voteStatus;
        /**
         * 重点工作
         */
        private Double keyTasks;
        /**
         * 工作进展
         */
        private Double progress;
        /**
         * 工作协同
         */
        private Double collaboration;
        /**
         * 团队建设
         */
        private Double teamBuilding;
        /**
         * 被投票人
         */
        private String userName;

        /**
         * 量化分
         */
        private Float quantifiedScore;
        /**
         * 参评人员类型：1课题组组长，2课题组成员
         */
        private Integer voteReviewerType;

    }


//    public static void main(String[] args) {
//        VoteOnlineUpdateReqVO reqVO = new VoteOnlineUpdateReqVO();
//        reqVO.voteId = 69;
//        reqVO.voteName="投票名称";
//
//        List<VoteStatus> statuses = new ArrayList<>();
//        for(int i=0;i<5;i++){
//            VoteStatus voteStatus = new VoteStatus();
//            voteStatus.setUserName("谢龙缘");
//            voteStatus.setUserNo("18689888910");
//            voteStatus.setCollaboration(30);
//            voteStatus.setProgress(20);
//            voteStatus.setKeyTasks(40);
//            voteStatus.setTeamBuilding(30);
//            statuses.add(voteStatus);
//        }
//
//        reqVO.setVoteStatusList(statuses);
//        System.out.println(JSONObject.toJSONString(reqVO));
//    }


}
